<?php

function generateCode($length = 6) {
	$chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHI JKLMNOPRQSTUVWXYZ0123456789";
	$code = "";
	$clen = strlen($chars) - 1;
	while (strlen($code) < $length) {
		$code .= $chars[mt_rand(0, $clen)];
	}
	return $code;
}

# Соединямся с БД
require_once 'include/config.php';

mysql_connect($db_host, $db_user, $db_pass);

mysql_select_db($db_name);

if (isset($_POST['submit'])) {

	# Вытаскиваем из БД запись, у которой логин равняеться введенному

	$query = mysql_query("SELECT user_id, user_password FROM users WHERE user_login='" . mysql_real_escape_string($_POST['login']) . "' LIMIT 1");

	$data = mysql_fetch_assoc($query);

	# Соавниваем пароли

	if ($data['user_password'] === md5(md5($_POST['password']))) {

		# Генерируем случайное число и шифруем его

		$hash = md5(generateCode(10));

		if (!@$_POST['not_attach_ip']) {

			# Если пользователя выбрал привязку к IP
			# Переводим IP в строку
			$insip = ", user_ip=INET_ATON('" . $_SERVER['REMOTE_ADDR'] . "')";
		}
		else {
			$insip = ", user_ip=0";
		}

		# Записываем в БД новый хеш авторизации и IP
		$query = "UPDATE users SET user_hash='" . $hash . "' " . $insip . " WHERE user_id='" . $data['user_id'] . "'";
		mysql_query($query);

		# Ставим куки

		setcookie("id", $data['user_id'], time() + 60 * 60 * 24 * 30, "/");

		setcookie("hash", $hash, time() + 60 * 60 * 24 * 30, "/");

		echo '<meta http-equiv="refresh" content="0;URL=/index.php">';

		exit();

	} else {

		$error = "Вы ввели неправильный логин/пароль";

	}
}

if (isset($_GET['action'])) {
	$action = $_GET['action'];
	if ($action == 'logout') {
		unset($_COOKIE['id']);
		setcookie('id', '', time() - 3600);
		unset($_COOKIE['hash']);
		setcookie('hash', '', time() - 3600);
	}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<script src="js/jquery-2.1.1.min.js" type="text/javascript"></script>
		<script src="js/jquery-ui.min.js" type="text/javascript"></script>
		<link href="css/styles.css" rel="stylesheet" type="text/css" />
		<link href="css/jquery-ui.css" rel="stylesheet" type="text/css" />
		<script type="text/javascript">
			$(document).ready(function() {
				$('input[type=text], input[type=password]').button().off("mousedown").css({
					'background-color':"white",
                    'background-image':'none',
					"cursor": "text",
					"text-align":"left"
				});
				$('input[type=checkbox]').css("border-color","#d3d3d3");
				$("input[type=submit]").button();
			});
		</script>
	</head>
	<body style="vertical-align: middle"> 
		<div class="login">
			<form method="POST">
				<table width="100%">
					<tr>
						<td colspan="2" align="center">
							<img src="images/logo.gif" alt="Itex networks"/>
						</td>
					</tr>
					<tr>
						<td width="50%"> Логин</td><td>
						<input name="login" type="text">
						</td>
					</tr>
					<tr>
						<td> Пароль</td><td>
						<input name="password" type="password">
						</td>
					</tr>
					<tr>
						<td> Не прикреплять к IP<br/>(не безопасно)</td><td>
						<input type="checkbox" name="not_attach_ip">
						</td>
					</tr>
					<tr>
						<td colspan="2" align="center">
							<?php if (isset($error)) { ?>
								<span style='color:red; line-height:20px'><?= $error ?></span><br/>
							<?	unset($error);	} ?>
							<input name="submit" type="submit" value="Войти">
						</td>
					</tr>
				
				</table>
			</form>
		</div>
	</body>
